package com.mdd.admin.service;

import com.mdd.admin.validate.commons.PageValidate;
import com.mdd.admin.validate.ClientCrmThreadCreateValidate;
import com.mdd.admin.validate.ClientCrmThreadUpdateValidate;
import com.mdd.admin.validate.ClientCrmThreadSearchValidate;
import com.mdd.admin.vo.ClientCrmThreadListedVo;
import com.mdd.admin.vo.ClientCrmThreadDetailVo;
import com.mdd.common.core.PageResult;

/**
 * 线索zsgc服务接口类
 * @author 洁洁
 */
public interface IClientCrmThreadService {

    /**
     * 线索zsgc列表
     *
     * @author 洁洁
     * @param pageValidate 分页参数
     * @param searchValidate 搜索参数
     * @return PageResult<ClientCrmThreadListedVo>
     */
    PageResult<ClientCrmThreadListedVo> list(PageValidate pageValidate, ClientCrmThreadSearchValidate searchValidate);

    /**
     * 线索zsgc详情
     *
     * @author 洁洁
     * @param id 主键ID
     * @return ClientCrmThreadDetailVo
     */
    ClientCrmThreadDetailVo detail(Integer id);

    /**
     * 线索zsgc新增
     *
     * @author 洁洁
     * @param createValidate 参数
     */
    void add(ClientCrmThreadCreateValidate createValidate);

    /**
     * 线索zsgc编辑
     *
     * @author 洁洁
     * @param updateValidate 参数
     */
    void edit(ClientCrmThreadUpdateValidate updateValidate);

    /**
     * 线索zsgc删除
     *
     * @author 洁洁
     * @param id 主键ID
     */
    void del(Integer id);

}
